using System;
using System.Collections;
using System.Collections.Generic;

namespace SmallStepSemanticCsharp
{
    abstract class Exp
    {
        abstract public bool reducible();
        abstract public Exp reduce(Dictionary<string, int> env);

        public int Val {get;set;}

    }
}
